草庐IT

TypeScript 运算符

全部标签

javascript - 在 TypeScript 中,什么时候使用 "let"什么时候使用 "const"?

在TypeScript中,什么时候使用“let”,什么时候使用“const”? 最佳答案 const代表constant,意思是变量不能在以后重新赋值。let与var类似,只是它是block作用域的,这意味着它可以在for循环内声明,并且将被局部于for循环的主体(因此在它之外不存在)后者不同于var变量,后者可以在任何地方声明,但始终在函数范围内。一般来说,尽量将变量定义为const是一种很好的做法。 关于javascript-在TypeScript中,什么时候使用"let"什么时候使

javascript - typescript :找不到模块 'react-cards' 的声明文件

我是ReactJS的新手,我发现自己陷入了下一件事。我已经像这样通过npm安装了react-cards:npminstall--savereact-cards安装没问题,我想像这样在我的代码中导入它:importCardfrom'react-cards';但后来我说这个时出错:Couldnotfindadeclarationfileformodule'react-cards':'path'implicitlyhasan'any'type.Try'npminstall@types/react-cards'ifitexistsoraddanewdeclaration(.d.ts)filec

javascript - 从 typescript 中的静态方法中检索类名

我正在尝试从静态方法中检索类名。它适用于普通方法,但不适用于静态方法classMyNode{constructor(){varclassname=this.constructor.toString().split('('||/s+/)[0].split(''||/s+/)[1];console.log(classname);}statica_static_method(){varclassname=this.constructor.toString().split('('||/s+/)[0].split(''||/s+/)[1];console.log(classname);}}var

javascript - 应用新运算符时有什么区别?

例如,如果我想在p元素上显示当前日期:$("p").html('Nowis'+Date());//good$("p").html('Nowis'+newDate());//good$("p").html(Date());//good$("p").html(newDate());//bad为什么最后一条语句不显示当前日期,而第二条语句显示当前日期? 最佳答案 在第一行和第三行Date()返回当前日期的字符串。在第二个中,当您将Date对象添加到字符串时,它必须将日期对象转换为字符串,因此您会看到预期的结果。在最后一行,它返回一个日期对

javascript - 自增运算符返回 NaN

我正在尝试使用++运算符递增一个变量,但我一直得到NaN结果,我不确定为什么。这是我的代码:varwordCounts={};varx=0varcompare="grooveisintheheart";varwords=compare.split(/\b/);for(vari=1;i2){wordCounts["_"+words[i]]++;}}alert(wordCounts.toSource()); 最佳答案 wordCounts["_"+words[i]]的值最初是undefined所以当你++它时,它给你NaN。只需将您的代

javascript - JS中的^=运算符是什么意思

这个问题在这里已经有了答案:WhatdotheseJavaScriptbitwiseoperatorsdo?(3个答案)关闭9年前。我正在尝试在JS上找出这个运算符-'string'^='string';但是我找不到Ant的资料。这是比较还是赋值?谢谢。

javascript - 我可以将 `else if` 与三元运算符一起使用吗?

我可以只使用if吗?和else在三元运算符语法的语句中,或者我也可以以某种方式包含elseif?例子:if(a){x}elseif(y){c}else{b} 最佳答案 与带有可选else或可选elseif分支的if不同,三元运算符有两个且只有两个分支。它实际上是名称的一部分。其中a+b中的+是一个二元运算符,即它有两个operands,?有三个,如a?b:c,因此被称为三元。从技术上讲,可能还有?之外的其他三元运算符,但在大多数语言中它们并不存在,因此通常理解名称“三元”表示?运算符。如果您对第二个子句进行子分支,您可以拥有类似el

javascript - 为什么当运算符优先级表明短路评估不应该时短路评估会起作用?

在JavaScript和Java,等于运算符(==或===)的优先级高于OR运算符(||)。然而,这两种语言(JS、Java)都支持if语句中的短路:当我们有if(true||anything())时,不会评估anything()。您还可以使用以下表达式:true||foo==getValue())-例如在诸如console.log(...);之类的输出语句中,或在赋值中。现在,根据运算符优先级,短路不应该发生,因为======>||在优先条款。(换句话说,应该首先进行比较,为此应该调用getValue(),因为相等性检查的优先级高于OR比较。)但确实如此。getValue()未被调用

javascript - jQuery @ 运算符?

所以我有其他人的旧代码,我正在尝试恢复。我不太熟悉jQuery,但是@运算符指定什么?代码是:v_button_format=$('#'+v_form_id).find('input[@name=button_format]').val();v_content_type=$('#'+v_form_id).find('input[@name=content_type]').val();我正在使用jQuery1.3,它抛出了“未捕获的异常:语法错误,无法识别的表达式:[@name=button_format]”错误。是否存在兼容性问题? 最佳答案

javascript - 闭包模板中的逻辑运算符

我正在玩GoogleClosureTemplates并且我无法成功编译某些模板,因为逻辑“and”和“or”运算符似乎无法在if标记内使用(我试过“&&”和“和”以及“||”和“或”)...如何我可以写一个“复杂”的if语句,如:{ifcondition1&&condition2}吗?编辑:以下简单语句引发异常:{if5>2&&2==2}“并非所有代码都采用SoyV2语法(发现标记{if5>2&&2==2}不采用SoyV2语法)” 最佳答案 根据最新版本docs,use可以使用and和or作为逻辑运算符:{if$x>1and$y2}